package req

const (
	DefaultPageIndex = 0
	DefaultPageSize  = 10
	DefaultOrder     = "id"
)

type Pager struct {
	PageIndex int    `json:"pageIndex" form:"pageIndex"`
	PageSize  int    `json:"pageSize" form:"pageSize"`
	Order     string `json:"order" form:"order"`
	Asc       bool   `json:"asc" form:"asc"`
}

func (p *Pager) Default() {
	if p.PageIndex == 0 {
		p.PageIndex = DefaultPageIndex
	}
	if p.PageSize == 0 {
		p.PageSize = DefaultPageSize
	}
	if len(p.Order) == 0 {
		p.Order = DefaultOrder
	}
}

func (p *Pager) GetOffset() int {
	p.Default()
	return (p.PageIndex - 1) * p.PageSize
}
